<template>
<!--歌单详情排行榜--> 
  <div >
    
    <div class="topheader">
        <div class="img">
            <img :src="playlist.coverImgUrl" alt="">
        </div>
        <div class="title">
            {{playlist.name}}
        </div>
        <div class="button" @click="$router.go(-1)">
            <span class="iconfont icon-fangxianganniu2"></span>
            {{playlist.tags[0] || "排行榜"}}
        </div>
    </div>

    <dl class="musicList">
        <dt @click="setId(playlist.tracks[0].id)">
            <i class="iconfont icon-bofang"></i>播放全部<span>(共{{playlist.tracks.length}}首)</span>
        </dt>
        <dd v-for="(item,index) in playlist.tracks" :key="item.id" @click="setId(item.id)">
            <h1>{{index+1}}</h1>
            <div class="info">
                <h2>{{item.name}}</h2>
                <h3><span v-for="value in item.ar" :key="value.id">{{value.name}}&nbsp;</span></h3>
            </div>
        </dd>
       
    </dl>

  </div>
</template>

<script>
import {getPlaylistDetail} from "../../api/rank";
export default {
    data(){
        return {
            playlist:{
                coverImgUrl:"",
                tags:[""],
                tracks:[]
            }
            // playlist:null
        }
    },
    created(){
        let queryId = this.$route.query;//接受rank路由视图传递的歌单id
        if(!('id' in queryId)){
            this.$router.push("/rank");
        }
        getPlaylistDetail({id:queryId.id}).then(data=>{
            console.log(data);
            this.playlist = data.playlist;
        })

    },
    methods:{
        setId(id){
            // 播放全部歌曲
            this.$emit("get-play-all-id",this.$route.query.id);//调用APP回调传递歌单id
            this.$emit("get-player-id",id);  //调用APP回调传递歌单单曲id
        }
    }
}
</script>

<style lang="less" scoped>
 .topheader{
        position: relative;
        height: 270px;
        .img{
            background-color: aqua;
            width: 100%;
            height: 270px;
            position: relative;
            img{
                position: absolute;
                top:0px;
                left:0px;
                right: 0px;
                bottom: 0px;
                margin:auto;
                width: 100%;
            }
        }
        .title{
            font-size: 18px;
            position: absolute;
            left:18px;
            bottom:18px;
            color:#fff;
        }
        .button{
            font-size: 18px;
            position: absolute;
            left:12px;
            top:12px;
            color:#fff;
        }
    }
     .musicList{
        background-color: #fff;
        width: 100%;
        border-radius: 7px;
        position: relative;
        top:-7px;
        padding-bottom:50px;
        dt{
            height: 36px;
            line-height: 36px;
            font-size: 16px;
            color:#454747;
            border-bottom: 1px solid #E3E3E3;
            span{
                font-size: 14px;
                color:#797B7A;
            }
            i{
                width: 44px;
                text-align: center;
                display: inline-block;
            }
        }
        dd{
            border-bottom: 1px solid #E3E3E3;
            height: 53px;
            display: flex;
            h1{
                flex: 0 0 44px;
                line-height: 53px;
                text-align: center;
                font-size: 16px;
                color:#6D6E6E;
            }
            .info{
                flex:1;
                h2{
                    font-size: 16px;
                    color:#1B1C1C;
                    margin-top: 10px;
                    height: 21px;
                    overflow: hidden;
                }
                h3{
                    font-size: 12px;
                    color:#929393;
                    height: 16px;
                    overflow: hidden;
                }
            }
        }
    }

</style>